diff options
| author | Carl Hetherington <cth@carlh.net> | 2025-10-22 14:53:58 +0200 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2025-10-22 21:15:16 +0200 |
| commit | 82c92387d303b912184519f485dd1c8b658223f9 (patch) | |
| tree | 268f8d72f4e22e6125cce41f138d54f1814f839c | |
| parent | 05b92f0ff44d9a758de8bbb555dde83351b9133c (diff) | |
Fix some warnings on macOS about variable-sized arrays.
| -rw-r--r-- | src/lib/dcpomatic_socket.cc | 16 | ||||
| -rw-r--r-- | src/lib/image.cc | 4 | ||||
| -rw-r--r-- | src/wx/video_waveform_plot.cc | 3 |
3 files changed, 11 insertions, 12 deletions
diff --git a/src/lib/dcpomatic_socket.cc b/src/lib/dcpomatic_socket.cc index 7aecf752f..33182e4a9 100644 --- a/src/lib/dcpomatic_socket.cc +++ b/src/lib/dcpomatic_socket.cc @@ -278,18 +278,18 @@ Socket::check_read_digest () DCPOMATIC_ASSERT (_read_digester); int const size = _read_digester->size (); - uint8_t ref[size]; - _read_digester->get (ref); + std::vector<uint8_t> ref(size); + _read_digester->get(ref.data()); /* Make sure _read_digester is gone before we call read() so that the digest * isn't itself digested. */ _read_digester.reset (); - uint8_t actual[size]; - read (actual, size); + std::vector<uint8_t> actual(size); + read(actual.data(), size); - return memcmp(ref, actual, size) == 0; + return ref == actual; } @@ -299,15 +299,15 @@ Socket::finish_write_digest () DCPOMATIC_ASSERT (_write_digester); int const size = _write_digester->size(); - uint8_t buffer[size]; - _write_digester->get (buffer); + std::vector<uint8_t> buffer(size); + _write_digester->get(buffer.data()); /* Make sure _write_digester is gone before we call write() so that the digest * isn't itself digested. */ _write_digester.reset (); - write (buffer, size); + write(buffer.data(), size); } diff --git a/src/lib/image.cc b/src/lib/image.cc index b1557bf47..f0d6f914c 100644 --- a/src/lib/image.cc +++ b/src/lib/image.cc @@ -286,7 +286,7 @@ Image::crop_scale_window ( round_height_for_subsampling((out_size.height - inter_size.height) / 2, out_desc) ); - uint8_t* scale_out_data[out->planes()]; + vector<uint8_t*> scale_out_data(out->planes()); for (int c = 0; c < out->planes(); ++c) { int const x = lrintf(out->bytes_per_pixel(c) * corner.x); scale_out_data[c] = out->data()[c] + x + out->stride()[c] * (corner.y / out->vertical_factor(c)); @@ -296,7 +296,7 @@ Image::crop_scale_window ( scale_context, scale_in_data.data(), stride(), 0, cropped_size.height, - scale_out_data, out->stride() + scale_out_data.data(), out->stride() ); sws_freeContext (scale_context); diff --git a/src/wx/video_waveform_plot.cc b/src/wx/video_waveform_plot.cc index 2827689a7..d9fbfb11e 100644 --- a/src/wx/video_waveform_plot.cc +++ b/src/wx/video_waveform_plot.cc @@ -162,8 +162,7 @@ VideoWaveformPlot::create_waveform () strip is the number of samples in image with the corresponding group of values. */ - int strip[waveform_height]; - memset (strip, 0, waveform_height * sizeof(int)); + std::vector<int> strip(waveform_height); int* ip = _image->data (_component) + x; for (int y = 0; y < image_size.height; ++y) { |
