[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-kimageshop
Subject: New Defects reported by Coverity Scan for krita
From: scan-admin () coverity ! com
Date: 2024-04-04 20:19:39
Message-ID: 660f0b5adc62f_27d542bc2fbf579b056864 () prd-scan-dashboard-0 ! mail
[Download RAW message or body]
Hi,
Please find the latest report on new defect(s) introduced to krita found with Coverity Scan.
654 new defect(s) introduced to krita found with Coverity Scan.
50 defect(s), reported by Coverity Scan earlier, were marked fixed in the recent build analyzed \
by Coverity Scan.
New defect(s) Reported-by: Coverity Scan
Showing 20 of 654 defect(s)
** CID 492078: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/libs/ui/kis_paintop_settings_widget.cpp: 141 in \
KisPaintOpSettingsWidget::writeConfiguration(KisPinnedSharedPtr<KisPropertiesConfiguration>) \
const()
________________________________________________________________________________________________________
*** CID 492078: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/libs/ui/kis_paintop_settings_widget.cpp: 141 in \
KisPaintOpSettingsWidget::writeConfiguration(KisPinnedSharedPtr<KisPropertiesConfiguration>) \
const() 135 indexcount++;
136 }
137 }
138
139 void KisPaintOpSettingsWidget::writeConfiguration(KisPropertiesConfigurationSP config) \
const 140 {
> > > CID 492078: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
> > > "config" is passed-by-value as parameter to "createLockedPropertiesProxy" when it could \
> > > be moved instead.
141 KisLockedPropertiesProxySP propertiesProxy = \
KisLockedPropertiesServer::instance()->createLockedPropertiesProxy(config); 142 \
Q_FOREACH (const KisPaintOpOption* option, m_d->paintOpOptions) { 143 \
option->startWriteOptionSetting(propertiesProxy); 144 }
145 }
146
** CID 492077: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/libs/psd/psd_layer_section.cpp: 725 in \
PSDLayerMaskSection::writePsdImpl(QIODevice &, KisSharedPtr<KisNode>, psd_compression_type)()
________________________________________________________________________________________________________
*** CID 492077: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/libs/psd/psd_layer_section.cpp: 725 in \
PSDLayerMaskSection::writePsdImpl(QIODevice &, KisSharedPtr<KisNode>, psd_compression_type)() \
719 layerRecord->labelColor = nodeLabelColor; 720
721 layerRecord->transparencyProtected = alphaLocked;
722 layerRecord->visible = nodeVisible;
723 layerRecord->irrelevant = nodeIrrelevant;
724
> > > CID 492077: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
> > > "nodeName" is copied in call to copy constructor "QString", when it could be moved \
> > > instead.
725 layerRecord->layerName = nodeName.isEmpty() ? i18n("Unnamed Layer") : \
nodeName; 726
727 layerRecord->fillType = fillType;
728 layerRecord->fillConfig = fillConfig;
729
730 layerRecord->write(io, layerContentDevice, onlyTransparencyMask, \
maskRect, sectionType, stylesXmlDoc, node->inherits("KisGroupLayer"));
** CID 490754: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/libs/flake/text/KoSvgTextShape_p_layout.cpp: 255 in \
KoSvgTextShape::Private::relayout()()
________________________________________________________________________________________________________
*** CID 490754: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/libs/flake/text/KoSvgTextShape_p_layout.cpp: 255 in \
KoSvgTextShape::Private::relayout()() 249 globalIndex = 0;
250 bool wrapped = !(inlineSize.isAuto && this->shapesInside.isEmpty());
251 if (!resolvedTransforms.isEmpty()) {
252 resolvedTransforms[0].xPos = 0;
253 resolvedTransforms[0].yPos = 0;
254 }
> > > CID 490754: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
> > > "collapseChars" is passed-by-value as parameter to "resolveTransforms" when it could be \
> > > moved instead.
255 this->resolveTransforms(textData.childBegin(), text, result, globalIndex, \
isHorizontal, wrapped, false, resolvedTransforms, collapseChars); 256
257 QMap<int, KoSvgText::TabSizeInfo> tabSizeInfo;
258
259 // pass everything to a css-compatible text-layout algortihm.
260 raqm_t_sp layout(raqm_create());
** CID 490753: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/libs/image/tests/kis_strokes_queue_test.cpp: 338 in \
KisStrokesQueueTest::testOpenedStrokeCounter()()
________________________________________________________________________________________________________
*** CID 490753: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/libs/image/tests/kis_strokes_queue_test.cpp: 338 in \
KisStrokesQueueTest::testOpenedStrokeCounter()() 332 KisStrokeId id0 = \
queue.startStroke(new KisTestingStrokeStrategy(QLatin1String("0"))); 333 \
QVERIFY(queue.hasOpenedStrokes()); 334 KisStrokeId id1 = queue.startStroke(new \
KisTestingStrokeStrategy(QLatin1String("1"))); 335 QVERIFY(queue.hasOpenedStrokes());
336 queue.endStroke(id0);
337 QVERIFY(queue.hasOpenedStrokes());
> > > CID 490753: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
> > > "id1" is passed-by-value as parameter to "endStroke" when it could be moved instead.
338 queue.endStroke(id1);
339 QVERIFY(!queue.hasOpenedStrokes());
340
341 KisTestableUpdaterContext context(2);
342 queue.processQueue(context, false); context.clear();
343 queue.processQueue(context, false); context.clear();
** CID 490752: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/libs/ui/kis_canvas_resource_provider.cpp: 363 in \
KisCanvasResourceProvider::slotGamutMaskActivated(QSharedPointer<KoGamutMask>)()
________________________________________________________________________________________________________
*** CID 490752: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/libs/ui/kis_canvas_resource_provider.cpp: 363 in \
KisCanvasResourceProvider::slotGamutMaskActivated(QSharedPointer<KoGamutMask>)() 357 \
QVariant v; 358 v.setValue<KoGamutMaskSP>(mask);
359 m_resourceManager->setResource(KoCanvasResource::CurrentGamutMask, v);
360
361 m_resourceManager->setResource(KoCanvasResource::GamutMaskActive, \
QVariant::fromValue(true)); 362
> > > CID 490752: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
> > > "mask" is passed-by-value as parameter to "sigGamutMaskChanged" when it could be moved \
> > > instead.
363 emit sigGamutMaskChanged(mask);
364 }
365
366 void KisCanvasResourceProvider::slotGamutMaskUnset()
367 {
368 m_resourceManager->setResource(KoCanvasResource::GamutMaskActive, \
QVariant::fromValue(false));
** CID 490751: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/libs/flake/text/KoSvgTextShapeLayoutFunc_lines.cpp: 577 in \
KoSvgTextShapeLayoutFunc::breakLines(const KoSvgTextProperties &, const QMap<int, int> &, \
QVector<CharacterResult> &, QPointF)()
________________________________________________________________________________________________________
*** CID 490751: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/libs/flake/text/KoSvgTextShapeLayoutFunc_lines.cpp: 577 in \
KoSvgTextShapeLayoutFunc::breakLines(const KoSvgTextProperties &, const QMap<int, int> &, \
QVector<CharacterResult> &, QPointF)() 571 currentPos += \
currentLine.textIndent; 572 }
573 wordAdvance = result.at(i).advance;
574 partialWord.append(i);
575 }
576 }
> > > CID 490751: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
> > > "partialWord" is copied in a call to copy assignment "operator =", when it could be moved \
> > > instead.
577 wordIndices = partialWord;
578 }
579 }
580 addWordToLine(result, currentPos, wordIndices, currentLine, ltr, \
isHorizontal); 581 }
582
** CID 490750: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/libs/ui/kis_statusbar.cc: 330 in \
KisStatusBar::updateMemoryStatus()()
________________________________________________________________________________________________________
*** CID 490750: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/libs/ui/kis_statusbar.cc: 330 in \
KisStatusBar::updateMemoryStatus()() 324 "\t\tPlease configure more \
RAM for Krita in Settings dialog"); 325 longStats += suffix;
326
327
328 }
329
> > > CID 490750: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
> > > "shortStats" is copied in a call to copy assignment "operator =", when it could be moved \
> > > instead.
330 m_shortMemoryTag = shortStats;
331 m_longMemoryTag = longStats;
332 m_memoryStatusIcon = icon;
333
334 m_memoryReportBox->setMaximumMemory(stats.totalMemoryLimit);
335 m_memoryReportBox->setCurrentMemory(stats.totalMemorySize);
** CID 490749: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/libs/image/commands/kis_node_property_list_command.cpp: 60 in \
KisNodePropertyListCommand::KisNodePropertyListCommand(KisSharedPtr<KisNode>, \
QList<KisBaseNode::Property>)()
________________________________________________________________________________________________________
*** CID 490749: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/libs/image/commands/kis_node_property_list_command.cpp: 60 in \
KisNodePropertyListCommand::KisNodePropertyListCommand(KisSharedPtr<KisNode>, \
QList<KisBaseNode::Property>)() 54
55 }
56
57
58 KisNodePropertyListCommand::KisNodePropertyListCommand(KisNodeSP node, \
KisBaseNode::PropertyList newPropertyList) 59 : KisNodeCommand(kundo2_i18n("Property \
Changes"), node),
> > > CID 490749: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
> > > "newPropertyList" is copied in call to copy constructor "QList<KisBaseNode::Property>", \
> > > when it could be moved instead.
60 m_newPropertyList(newPropertyList),
61 m_oldPropertyList(node->sectionModelProperties())
62 /**
63 * TODO instead of "Property Changes" check which property
64 * has been changed and display either lock/unlock, visible/hidden
65 * or "Property Changes" (this require new strings)
** CID 490748: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/libs/ui/KisImportExportUtils.h: 47 in \
KritaUtils::ExportFileJob::ExportFileJob(QString, QByteArray, QFlags<KritaUtils::SaveFlag>)()
________________________________________________________________________________________________________
*** CID 490748: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/libs/ui/KisImportExportUtils.h: 47 in \
KritaUtils::ExportFileJob::ExportFileJob(QString, QByteArray, QFlags<KritaUtils::SaveFlag>)() \
41 ExportFileJob() 42 : flags(SaveNone)
43 {
44 }
45
46 ExportFileJob(QString _filePath, QByteArray _mimeType, SaveFlags _flags = SaveNone)
> > > CID 490748: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
> > > "_mimeType" is copied in call to copy constructor "QByteArray", when it could be moved \
> > > instead.
47 : filePath(_filePath), mimeType(_mimeType), flags(_flags)
48 {
49 }
50
51 bool isValid() const {
52 return !filePath.isEmpty();
** CID 490747: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/libs/image/tests/kis_strokes_queue_test.cpp: 359 in \
KisStrokesQueueTest::testAsyncCancelWhileOpenedStroke()()
________________________________________________________________________________________________________
*** CID 490747: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/libs/image/tests/kis_strokes_queue_test.cpp: 359 in \
KisStrokesQueueTest::testAsyncCancelWhileOpenedStroke()() 353 queue.addJob(id, 0);
354 queue.addJob(id, 0);
355
356 // no async cancelling until the stroke is ended by the owner
357 QVERIFY(!queue.tryCancelCurrentStrokeAsync());
358
> > > CID 490747: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
> > > "id" is passed-by-value as parameter to "endStroke" when it could be moved instead.
359 queue.endStroke(id);
360
361 QVERIFY(queue.tryCancelCurrentStrokeAsync());
362
363 bool externalJobsPending = false;
364
** CID 490746: Performance inefficiencies (PASS_BY_VALUE)
/home/appimage/appimage-workspace/deps/usr/include/lager/detail/nodes.hpp: 303 in \
_ZN5lager6detail9root_nodeI23MyPaintChangeColorHDataNS0_11cursor_nodeEECI1NS0_11reader_nodeIS2_EEES2_()
________________________________________________________________________________________________________
*** CID 490746: Performance inefficiencies (PASS_BY_VALUE)
/home/appimage/appimage-workspace/deps/usr/include/lager/detail/nodes.hpp: 303 in \
_ZN5lager6detail9root_nodeI23MyPaintChangeColorHDataNS0_11cursor_nodeEECI1NS0_11reader_nodeIS2_EEES2_()
297 };
298
299 template <typename T, template <class> class Base = reader_node>
300 struct root_node : Base<T>
301 {
302 using base_t = Base<T>;
> > > CID 490746: Performance inefficiencies (PASS_BY_VALUE)
> > > Passing parameter 1 of type "std::remove_reference_t<MyPaintChangeColorHData>" (size 144 \
> > > bytes) by value, which exceeds the low threshold of 128 bytes.
303 using base_t::base_t;
304
305 void refresh() final override {}
306 };
307
308 template <typename... Nodes>
** CID 490745: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/libs/ui/KisFrameCacheStore.cpp: 97 in \
<unnamed>::FrameInfo::FrameInfo(const QRect &, const QRect &, int, KisFrameDataSerializer &, \
QSharedPointer<<unnamed>::FrameInfo>)()
________________________________________________________________________________________________________
*** CID 490745: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/libs/ui/KisFrameCacheStore.cpp: 97 in \
<unnamed>::FrameInfo::FrameInfo(const QRect &, const QRect &, int, KisFrameDataSerializer &, \
QSharedPointer<<unnamed>::FrameInfo>)() 91
92 // copy frame
93 FrameInfo::FrameInfo(const QRect &dirtyImageRect, const QRect &imageBounds, int \
levelOfDetail, KisFrameDataSerializer &serializer, FrameInfoSP baseFrame) 94 : \
m_levelOfDetail(levelOfDetail), 95 m_dirtyImageRect(dirtyImageRect),
96 m_imageBounds(imageBounds),
> > > CID 490745: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
> > > "baseFrame" is copied in call to copy constructor "QSharedPointer<<unnamed>::FrameInfo>", \
> > > when it could be moved instead.
97 m_baseFrame(baseFrame),
98 m_type(FrameCopy),
99 m_savedFrameDataId(-1),
100 m_serializer(serializer)
101 {
102 }
** CID 490744: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/plugins/assistants/Assistants/kis_assistant_tool.cc: 922 in \
KisAssistantTool::assistantSelected(QSharedPointer<KisPaintingAssistant>)()
________________________________________________________________________________________________________
*** CID 490744: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/plugins/assistants/Assistants/kis_assistant_tool.cc: 922 in \
KisAssistantTool::assistantSelected(QSharedPointer<KisPaintingAssistant>)() 916 \
m_canvas->paintingAssistantsDecoration()->deselectAssistant(); 917 \
updateToolOptionsUI(); 918 }
919
920 void KisAssistantTool::assistantSelected(KisPaintingAssistantSP assistant)
921 {
> > > CID 490744: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
> > > "assistant" is passed-by-value as parameter to "setSelectedAssistant" when it could be \
> > > moved instead.
922 m_canvas->paintingAssistantsDecoration()->setSelectedAssistant(assistant);
923 updateToolOptionsUI();
924 }
925
926 void KisAssistantTool::updateToolOptionsUI()
927 {
** CID 490743: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/plugins/paintops/libpaintop/kis_brush_option.cpp: 118 in \
KisBrushOptionProperties::setBrush(QSharedPointer<KisBrush>)()
________________________________________________________________________________________________________
*** CID 490743: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/plugins/paintops/libpaintop/kis_brush_option.cpp: 118 in \
KisBrushOptionProperties::setBrush(QSharedPointer<KisBrush>)() 112 {
113 return m_brush;
114 }
115
116 void KisBrushOptionProperties::setBrush(KisBrushSP brush)
117 {
> > > CID 490743: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
> > > "brush" is copied in a call to copy assignment "operator =", when it could be moved \
> > > instead.
118 m_brush = brush;
** CID 490742: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/libs/global/KisSynchronizedConnection.cpp: 68 in \
KisSynchronizedConnectionBase::registerSynchronizedEventBarrier(std::function<void ()>)()
________________________________________________________________________________________________________
*** CID 490742: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/libs/global/KisSynchronizedConnection.cpp: 68 in \
KisSynchronizedConnectionBase::registerSynchronizedEventBarrier(std::function<void ()>)() 62 \
return s_instance->eventType; 63 }
64
65 void KisSynchronizedConnectionBase::registerSynchronizedEventBarrier(std::function<void \
()> callback) 66 {
67 KIS_SAFE_ASSERT_RECOVER_NOOP(!s_barrier->callback);
> > > CID 490742: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
> > > "callback" is copied in a call to copy assignment "operator =", when it could be moved \
> > > instead.
68 s_barrier->callback = callback;
69 }
70
71 void KisSynchronizedConnectionBase::setAutoModeForUnittestsEnabled(bool value)
72 {
73 s_instance->enableAutoModeForUnittests = value;
** CID 490741: Performance inefficiencies (PASS_BY_VALUE)
/home/appimage/appimage-workspace/deps/usr/include/lager/detail/nodes.hpp: 303 in \
_ZN5lager6detail9root_nodeI16KisHueOptionDataNS0_11cursor_nodeEECI1NS0_11reader_nodeIS2_EEES2_()
________________________________________________________________________________________________________
*** CID 490741: Performance inefficiencies (PASS_BY_VALUE)
/home/appimage/appimage-workspace/deps/usr/include/lager/detail/nodes.hpp: 303 in \
_ZN5lager6detail9root_nodeI16KisHueOptionDataNS0_11cursor_nodeEECI1NS0_11reader_nodeIS2_EEES2_()
297 };
298
299 template <typename T, template <class> class Base = reader_node>
300 struct root_node : Base<T>
301 {
302 using base_t = Base<T>;
> > > CID 490741: Performance inefficiencies (PASS_BY_VALUE)
> > > Passing parameter 1 of type "std::remove_reference_t<KisHueOptionData>" (size 144 bytes) \
> > > by value, which exceeds the low threshold of 128 bytes.
303 using base_t::base_t;
304
305 void refresh() final override {}
306 };
307
308 template <typename... Nodes>
** CID 490740: (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/libs/resources/KisRequiredResourcesOperators.h: 91 in \
KisRequiredResourcesOperators::cloneWithResourcesSnapshot<KisPinnedSharedPtr<KisFilterConfiguration>, \
KisFilterConfiguration>(const T2 *, QSharedPointer<KisResourcesInterface>)()
/home/appimage/persistent/krita/libs/resources/KisRequiredResourcesOperators.h: 91 in \
KisRequiredResourcesOperators::cloneWithResourcesSnapshot<QSharedPointer<KisPSDLayerStyle>, \
KisPSDLayerStyle>(const T2 *, QSharedPointer<KisResourcesInterface>)()
/home/appimage/persistent/krita/libs/resources/KisRequiredResourcesOperators.h: 91 in \
KisRequiredResourcesOperators::cloneWithResourcesSnapshot<QSharedPointer<KisPaintOpPreset>, \
KisPaintOpPreset>(const T2 *, QSharedPointer<KisResourcesInterface>)()
________________________________________________________________________________________________________
*** CID 490740: (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/libs/resources/KisRequiredResourcesOperators.h: 91 in \
KisRequiredResourcesOperators::cloneWithResourcesSnapshot<KisPinnedSharedPtr<KisFilterConfiguration>, \
KisFilterConfiguration>(const T2 *, QSharedPointer<KisResourcesInterface>)() 85 \
KisResourcesInterfaceSP globalResourcesInterface = nullptr) 86 {
87 auto clonedStorage = object->clone();
88 TypeSP cloned = KisSharedPointerTraits<TypeSP>::template \
dynamicCastSP<T>(clonedStorage); 89
90 if (!hasLocalResourcesSnapshot(cloned.data())) {
> > > CID 490740: (COPY_INSTEAD_OF_MOVE)
> > > "globalResourcesInterface" is passed-by-value as parameter to \
> > > "createLocalResourcesSnapshot" when it could be moved instead.
91 createLocalResourcesSnapshot(cloned.data(), globalResourcesInterface);
92 KIS_SAFE_ASSERT_RECOVER_NOOP(hasLocalResourcesSnapshot(cloned.data()));
93 }
94
95 return cloned;
96 }
97
98 }
99
/home/appimage/persistent/krita/libs/resources/KisRequiredResourcesOperators.h: 91 in \
KisRequiredResourcesOperators::cloneWithResourcesSnapshot<QSharedPointer<KisPSDLayerStyle>, \
KisPSDLayerStyle>(const T2 *, QSharedPointer<KisResourcesInterface>)() 85 \
KisResourcesInterfaceSP globalResourcesInterface = nullptr) 86 {
87 auto clonedStorage = object->clone();
88 TypeSP cloned = KisSharedPointerTraits<TypeSP>::template \
dynamicCastSP<T>(clonedStorage); 89
90 if (!hasLocalResourcesSnapshot(cloned.data())) {
> > > CID 490740: (COPY_INSTEAD_OF_MOVE)
> > > "globalResourcesInterface" is passed-by-value as parameter to \
> > > "createLocalResourcesSnapshot" when it could be moved instead.
91 createLocalResourcesSnapshot(cloned.data(), globalResourcesInterface);
92 KIS_SAFE_ASSERT_RECOVER_NOOP(hasLocalResourcesSnapshot(cloned.data()));
93 }
94
95 return cloned;
96 }
97
98 }
99
/home/appimage/persistent/krita/libs/resources/KisRequiredResourcesOperators.h: 91 in \
KisRequiredResourcesOperators::cloneWithResourcesSnapshot<QSharedPointer<KisPaintOpPreset>, \
KisPaintOpPreset>(const T2 *, QSharedPointer<KisResourcesInterface>)() 85 \
KisResourcesInterfaceSP globalResourcesInterface = nullptr) 86 {
87 auto clonedStorage = object->clone();
88 TypeSP cloned = KisSharedPointerTraits<TypeSP>::template \
dynamicCastSP<T>(clonedStorage); 89
90 if (!hasLocalResourcesSnapshot(cloned.data())) {
> > > CID 490740: (COPY_INSTEAD_OF_MOVE)
> > > "globalResourcesInterface" is passed-by-value as parameter to \
> > > "createLocalResourcesSnapshot" when it could be moved instead.
91 createLocalResourcesSnapshot(cloned.data(), globalResourcesInterface);
92 KIS_SAFE_ASSERT_RECOVER_NOOP(hasLocalResourcesSnapshot(cloned.data()));
93 }
94
95 return cloned;
96 }
97
98 }
99
** CID 490739: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/plugins/impex/libkra/kis_kra_loader.cpp: 1130 in \
KisKraLoader::loadFileLayer(const QDomElement &, KisSharedPtr<KisImage>, const QString &, \
unsigned int, const KoColorSpace *)()
________________________________________________________________________________________________________
*** CID 490739: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/plugins/impex/libkra/kis_kra_loader.cpp: 1130 in \
KisKraLoader::loadFileLayer(const QDomElement &, KisSharedPtr<KisImage>, const QString &, \
unsigned int, const KoColorSpace *)() 1124 KoFileDialog dialog(0, \
KoFileDialog::OpenFile, "OpenDocument"); 1125 \
dialog.setMimeTypeFilters(KisImportExportManager::supportedMimeTypes(KisImportExportManager::Import));
1126 dialog.setDefaultDir(basePath);
1127 QString url = dialog.filename();
1128
1129 if (!QFileInfo(basePath).exists()) {
> > > CID 490739: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
> > > "url" is copied in a call to copy assignment "operator =", when it could be moved \
> > > instead.
1130 filename = url;
1131 } else {
1132 QDir d(basePath);
1133 filename = d.relativeFilePath(url);
1134 }
1135 }
** CID 490738: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/plugins/tools/defaulttool/referenceimagestool/ToolReferenceImages.cpp: \
185 in ToolReferenceImages::loadReferenceImages()()
________________________________________________________________________________________________________
*** CID 490738: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/plugins/tools/defaulttool/referenceimagestool/ToolReferenceImages.cpp: \
185 in ToolReferenceImages::loadReferenceImages()() 179 Q_FOREACH(auto *reference, \
collection.referenceImages()) { 180 reference->setZIndex(currentZIndex);
181 shapes.append(reference);
182 currentZIndex += 1;
183 }
184
> > > CID 490738: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
> > > "shapes" is passed-by-value as parameter to "addReferenceImages" when it could be moved \
> > > instead.
185 canvas()->addCommand(KisReferenceImagesLayer::addReferenceImages(document(), \
shapes)); 186 } else {
187 QMessageBox::critical(qApp->activeWindow(), i18nc("@title:window", "Krita"), \
i18n("Could not load reference images from '%1'.", filename)); 188 }
189 file.close();
190 }
** CID 490737: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/plugins/impex/qimageio/kis_qimageio_export.cpp: 89 in \
KisQImageIOExport::initializeCapabilities()()
________________________________________________________________________________________________________
*** CID 490737: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/home/appimage/persistent/krita/plugins/impex/qimageio/kis_qimageio_export.cpp: 89 in \
KisQImageIOExport::initializeCapabilities()() 83
84 void KisQImageIOExport::initializeCapabilities()
85 {
86 QList<QPair<KoID, KoID> > supportedColorModels;
87 supportedColorModels << QPair<KoID, KoID>()
88 << QPair<KoID, KoID>(RGBAColorModelID, Integer8BitsColorDepthID);
> > > CID 490737: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
> > > "supportedColorModels" is passed-by-value as parameter to "addSupportedColorModels" when \
> > > it could be moved instead.
89 addSupportedColorModels(supportedColorModels, \
KisMimeDatabase::descriptionForMimeType(mimeType())); 90 \
addCapability(KisExportCheckRegistry::instance()->get("ColorModelPerLayerCheck/" + \
RGBAColorModelID.id() + "/" + \
Integer8BitsColorDepthID.id())->create(KisExportCheckBase::SUPPORTED)); 91 }
92
93 KisConfigWidget *KisQImageIOExport::createConfigurationWidget(QWidget *parent, const \
QByteArray& /*from*/, const QByteArray& /*to*/) const 94 {
________________________________________________________________________________________________________
To view the defects in Coverity Scan visit, \
https://u15810271.ct.sendgrid.net/ls/click?upn=u001.AxU2LYlgjL6eX23u9ErQy-2BKADyCpvUKOL6EWmZljiu \
5gzcy6ShDi8gOI97yt4PxN0WdTPCCwy5jWTy9rkTKogA-3D-3DTyHf_Y4i2iIXYnDo-2FJnf5R5M-2Ff5mw6kl6qHmmlqiQw \
kdgEiE0-2FCVkQTZ93vmFXdTNKyqV3j-2FLeh35Labzi-2B5RAIVFVnqPPc2OR-2BNv8VmCgtmOOV9d3TVBKXD8fL588EBKr \
sBU4VsCWRdnJsvaqBxH-2Bwb86n0-2BSbmvFf34ryCr1mfiQXcnD90-2BxJesHx-2FWJSSqZYty6VZWa7kfnrSp724wgS46ZA-3D-3D
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic