summaryrefslogtreecommitdiff
path: root/src/lib/image.h
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2019-11-04 16:38:14 +0100
committerCarl Hetherington <cth@carlh.net>2019-11-04 16:38:14 +0100
commit7b0372776ac4da6a8e4ff29f41a4f08b9b4de506 (patch)
tree18306caff0a8c2ded2669d27cd2c179fc56869fd /src/lib/image.h
parent25d968fdcf1abada4bd7bbcb8c72eeebda73b134 (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.
Diffstat (limited to 'src/lib/image.h')
-rw-r--r--src/lib/image.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/lib/image.h b/src/lib/image.h
index 4b059ff36..46633df67 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);