Browse Source

*Importer: replace needless Utility::copy() with Array InPlaceInit.

pull/674/head
Vladimír Vondruš 12 months ago
parent
commit
0a37b37af8
  1. 4
      src/MagnumPlugins/TgaImporter/Test/TgaImporterTest.cpp
  2. 8
      src/MagnumPlugins/TgaImporter/TgaImporter.cpp
  3. 8
      src/MagnumPlugins/WavAudioImporter/WavImporter.cpp

4
src/MagnumPlugins/TgaImporter/Test/TgaImporterTest.cpp

@ -29,7 +29,6 @@
#include <Corrade/Containers/String.h> #include <Corrade/Containers/String.h>
#include <Corrade/TestSuite/Tester.h> #include <Corrade/TestSuite/Tester.h>
#include <Corrade/TestSuite/Compare/Container.h> #include <Corrade/TestSuite/Compare/Container.h>
#include <Corrade/Utility/Algorithms.h>
#include <Corrade/Utility/Format.h> #include <Corrade/Utility/Format.h>
#include <Corrade/Utility/Path.h> #include <Corrade/Utility/Path.h>
@ -259,8 +258,7 @@ const struct {
} OpenMemoryData[]{ } OpenMemoryData[]{
{"data", [](AbstractImporter& importer, Containers::ArrayView<const void> data) { {"data", [](AbstractImporter& importer, Containers::ArrayView<const void> data) {
/* Copy to ensure the original memory isn't referenced */ /* Copy to ensure the original memory isn't referenced */
Containers::Array<char> copy{NoInit, data.size()}; Containers::Array<char> copy{InPlaceInit, Containers::arrayCast<const char>(data)};
Utility::copy(Containers::arrayCast<const char>(data), copy);
return importer.openData(copy); return importer.openData(copy);
}}, }},
{"memory", [](AbstractImporter& importer, Containers::ArrayView<const void> data) { {"memory", [](AbstractImporter& importer, Containers::ArrayView<const void> data) {

8
src/MagnumPlugins/TgaImporter/TgaImporter.cpp

@ -68,12 +68,10 @@ void TgaImporter::doOpenData(Containers::Array<char>&& data, const DataFlags dat
} }
/* Ttake over the existing array or copy the data if we can't */ /* Ttake over the existing array or copy the data if we can't */
if(dataFlags & (DataFlag::Owned|DataFlag::ExternallyOwned)) { if(dataFlags & (DataFlag::Owned|DataFlag::ExternallyOwned))
_in = Utility::move(data); _in = Utility::move(data);
} else { else
_in = Containers::Array<char>{NoInit, data.size()}; _in = Containers::Array<char>{InPlaceInit, data};
Utility::copy(data, _in);
}
} }
UnsignedInt TgaImporter::doImage2DCount() const { return 1; } UnsignedInt TgaImporter::doImage2DCount() const { return 1; }

8
src/MagnumPlugins/WavAudioImporter/WavImporter.cpp

@ -27,7 +27,6 @@
#include "WavImporter.h" #include "WavImporter.h"
#include <Corrade/Utility/Algorithms.h>
#include <Corrade/Utility/Assert.h> #include <Corrade/Utility/Assert.h>
#include <Corrade/Utility/Debug.h> #include <Corrade/Utility/Debug.h>
#include <Corrade/Utility/EndiannessBatch.h> #include <Corrade/Utility/EndiannessBatch.h>
@ -223,8 +222,7 @@ void WavImporter::doOpenData(Containers::ArrayView<const char> data) {
_frequency = formatChunk->sampleRate; _frequency = formatChunk->sampleRate;
/* Copy the data */ /* Copy the data */
_data = Containers::Array<char>{NoInit, dataChunkSize}; _data = Containers::Array<char>{InPlaceInit, Containers::arrayView(reinterpret_cast<const char*>(dataChunk + 1), dataChunkSize)};
Utility::copy(Containers::arrayView(reinterpret_cast<const char*>(dataChunk + 1), dataChunkSize), *_data);
/* Fix the data endianness */ /* Fix the data endianness */
if(hasBigEndianData != Utility::Endianness::isBigEndian()) { if(hasBigEndianData != Utility::Endianness::isBigEndian()) {
@ -245,9 +243,7 @@ BufferFormat WavImporter::doFormat() const { return _format; }
UnsignedInt WavImporter::doFrequency() const { return _frequency; } UnsignedInt WavImporter::doFrequency() const { return _frequency; }
Containers::Array<char> WavImporter::doData() { Containers::Array<char> WavImporter::doData() {
Containers::Array<char> copy{NoInit, _data->size()}; return Containers::Array<char>{InPlaceInit, *_data};
Utility::copy(*_data, copy);
return copy;
} }
}} }}

Loading…
Cancel
Save