summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2016-05-23 22:35:12 +0100
committerCarl Hetherington <cth@carlh.net>2016-05-23 22:35:12 +0100
commit4835e35b1d483922ff6c80e6ed3a4d7055233e1b (patch)
treecad67736fc00ee11d2415c6047ac5bad275d101a /src
parentcdab75c5600a706d623c5e23bc0530c4bf588735 (diff)
Various moderately unpleasant hacks for Centos 5 build.
Diffstat (limited to 'src')
-rw-r--r--src/lib/render_subtitles.cc16
1 files changed, 15 insertions, 1 deletions
diff --git a/src/lib/render_subtitles.cc b/src/lib/render_subtitles.cc
index ed7d131fd..16c6a3c4e 100644
--- a/src/lib/render_subtitles.cc
+++ b/src/lib/render_subtitles.cc
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2014-2015 Carl Hetherington <cth@carlh.net>
+ Copyright (C) 2014-2016 Carl Hetherington <cth@carlh.net>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -23,6 +23,7 @@
#include "cross.h"
#include "font.h"
#include "dcpomatic_assert.h"
+#include <fontconfig/fontconfig.h>
#include <cairomm/cairomm.h>
#include <pangomm.h>
#include <boost/foreach.hpp>
@@ -81,6 +82,7 @@ render_line (list<dcp::SubtitleString> subtitles, list<shared_ptr<Font> > fonts,
shared_ptr<Image> image (new Image (AV_PIX_FMT_RGBA, dcp::Size (target.width, height), false));
image->make_black ();
+#ifdef DCPOMATIC_HAVE_FORMAT_STRIDE_FOR_WIDTH
Cairo::RefPtr<Cairo::ImageSurface> surface = Cairo::ImageSurface::create (
image->data()[0],
Cairo::FORMAT_ARGB32,
@@ -88,6 +90,18 @@ render_line (list<dcp::SubtitleString> subtitles, list<shared_ptr<Font> > fonts,
image->size().height,
Cairo::ImageSurface::format_stride_for_width (Cairo::FORMAT_ARGB32, image->size().width)
);
+#else
+ /* Centos 5 does not have Cairo::ImageSurface::format_stride_for_width, so just use width * 4
+ which I hope is safe (if slow)
+ */
+ Cairo::RefPtr<Cairo::ImageSurface> surface = Cairo::ImageSurface::create (
+ image->data()[0],
+ Cairo::FORMAT_ARGB32,
+ image->size().width,
+ image->size().height,
+ image->size().width * 4
+ );
+#endif
Cairo::RefPtr<Cairo::Context> context = Cairo::Context::create (surface);