diff options
| author | Carl Hetherington <cth@carlh.net> | 2019-11-04 16:38:14 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2019-11-16 22:46:39 +0100 |
| commit | ed4fc06db6957b2b63b2400a737f47c18a1003be (patch) | |
| tree | e429ffc3df79e141dacb870ffe9d232e8b72efd4 /src/lib/image.h | |
| parent | 81e40e7b915a55f8e5aa2db34ad809552b1534e3 (diff) | |
Fix incorrect images when cropping without stretch.
Always overallocate images so that Image::crop_scale_window is always
safe from over-reading buffers. Relates to #1654 and probably #1653.
Backported from 7b0372776ac4da6a8e4ff29f41a4f08b9b4de506 in v2.15.x.
Diffstat (limited to 'src/lib/image.h')
| -rw-r--r-- | src/lib/image.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/lib/image.h b/src/lib/image.h index dbcb38cc7..51d768a13 100644 --- a/src/lib/image.h +++ b/src/lib/image.h @@ -41,7 +41,7 @@ class Socket; class Image : public boost::enable_shared_from_this<Image> { public: - Image (AVPixelFormat p, dcp::Size s, bool aligned, int extra_pixels = 0); + Image (AVPixelFormat p, dcp::Size s, bool aligned); explicit Image (AVFrame *); explicit Image (Image const &); Image (boost::shared_ptr<const Image>, bool); @@ -92,6 +92,7 @@ private: void allocate (); void swap (Image &); + void make_part_black (int x, int w); void yuv_16_black (uint16_t, bool); static uint16_t swap_16 (uint16_t); @@ -101,7 +102,6 @@ private: int* _line_size; ///< array of sizes of the data in each line, in bytes (without any alignment padding bytes) int* _stride; ///< array of strides for each line, in bytes (including any alignment padding bytes) bool _aligned; - int _extra_pixels; }; extern PositionImage merge (std::list<PositionImage> images); |
