mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
Update podofo to 0.9.1 in all binary build, to fix corruption of some PDFs when updating metadata. Fixes #1031086 (Save To Disk with Update Metadata can corrupt PDF)
This commit is contained in:
parent
3358425ae1
commit
c1173a2224
@ -140,7 +140,7 @@ extensions = [
|
|||||||
['calibre/utils/podofo/podofo.cpp'],
|
['calibre/utils/podofo/podofo.cpp'],
|
||||||
libraries=['podofo'],
|
libraries=['podofo'],
|
||||||
lib_dirs=[podofo_lib],
|
lib_dirs=[podofo_lib],
|
||||||
inc_dirs=[podofo_inc],
|
inc_dirs=[podofo_inc, os.path.dirname(podofo_inc)],
|
||||||
optional=True,
|
optional=True,
|
||||||
error=podofo_error),
|
error=podofo_error),
|
||||||
|
|
||||||
|
@ -32,7 +32,7 @@ binary_includes = [
|
|||||||
'/usr/lib/libunrar.so',
|
'/usr/lib/libunrar.so',
|
||||||
'/usr/lib/libsqlite3.so.0',
|
'/usr/lib/libsqlite3.so.0',
|
||||||
'/usr/lib/libmng.so.1',
|
'/usr/lib/libmng.so.1',
|
||||||
'/usr/lib/libpodofo.so.0.8.4',
|
'/usr/lib/libpodofo.so.0.9.1',
|
||||||
'/lib/libz.so.1',
|
'/lib/libz.so.1',
|
||||||
'/usr/lib/libtiff.so.5',
|
'/usr/lib/libtiff.so.5',
|
||||||
'/lib/libbz2.so.1',
|
'/lib/libbz2.so.1',
|
||||||
|
@ -243,9 +243,6 @@ class Py2App(object):
|
|||||||
@flush
|
@flush
|
||||||
def get_local_dependencies(self, path_to_lib):
|
def get_local_dependencies(self, path_to_lib):
|
||||||
for x in self.get_dependencies(path_to_lib):
|
for x in self.get_dependencies(path_to_lib):
|
||||||
if x.startswith('libpodofo'):
|
|
||||||
yield x, x
|
|
||||||
continue
|
|
||||||
for y in (SW+'/lib/', '/usr/local/lib/', SW+'/qt/lib/',
|
for y in (SW+'/lib/', '/usr/local/lib/', SW+'/qt/lib/',
|
||||||
'/opt/local/lib/',
|
'/opt/local/lib/',
|
||||||
SW+'/python/Python.framework/', SW+'/freetype/lib/'):
|
SW+'/python/Python.framework/', SW+'/freetype/lib/'):
|
||||||
@ -330,10 +327,6 @@ class Py2App(object):
|
|||||||
for f in glob.glob('src/calibre/plugins/*.so'):
|
for f in glob.glob('src/calibre/plugins/*.so'):
|
||||||
shutil.copy2(f, dest)
|
shutil.copy2(f, dest)
|
||||||
self.fix_dependencies_in_lib(join(dest, basename(f)))
|
self.fix_dependencies_in_lib(join(dest, basename(f)))
|
||||||
if 'podofo' in f:
|
|
||||||
self.change_dep('libpodofo.0.8.4.dylib',
|
|
||||||
self.FID+'/'+'libpodofo.0.8.4.dylib', join(dest, basename(f)))
|
|
||||||
|
|
||||||
|
|
||||||
@flush
|
@flush
|
||||||
def create_plist(self):
|
def create_plist(self):
|
||||||
@ -380,7 +373,7 @@ class Py2App(object):
|
|||||||
@flush
|
@flush
|
||||||
def add_podofo(self):
|
def add_podofo(self):
|
||||||
info('\nAdding PoDoFo')
|
info('\nAdding PoDoFo')
|
||||||
pdf = join(SW, 'lib', 'libpodofo.0.8.4.dylib')
|
pdf = join(SW, 'lib', 'libpodofo.0.9.1.dylib')
|
||||||
self.install_dylib(pdf)
|
self.install_dylib(pdf)
|
||||||
|
|
||||||
@flush
|
@flush
|
||||||
|
@ -322,24 +322,7 @@ cp build/podofo-*/build/src/Release/podofo.exp lib/
|
|||||||
cp build/podofo-*/build/podofo_config.h include/podofo/
|
cp build/podofo-*/build/podofo_config.h include/podofo/
|
||||||
cp -r build/podofo-*/src/* include/podofo/
|
cp -r build/podofo-*/src/* include/podofo/
|
||||||
|
|
||||||
You have to use >=0.8.2
|
You have to use >=0.9.1
|
||||||
|
|
||||||
The following patch (against -r1269) was required to get it to compile:
|
|
||||||
|
|
||||||
|
|
||||||
Index: src/PdfFiltersPrivate.cpp
|
|
||||||
===================================================================
|
|
||||||
--- src/PdfFiltersPrivate.cpp (revision 1261)
|
|
||||||
+++ src/PdfFiltersPrivate.cpp (working copy)
|
|
||||||
@@ -1019,7 +1019,7 @@
|
|
||||||
/*
|
|
||||||
* Prepare for input from a memory buffer.
|
|
||||||
*/
|
|
||||||
-GLOBAL(void)
|
|
||||||
+void
|
|
||||||
jpeg_memory_src (j_decompress_ptr cinfo, const JOCTET * buffer, size_t bufsize)
|
|
||||||
{
|
|
||||||
my_src_ptr src;
|
|
||||||
|
|
||||||
|
|
||||||
ImageMagick
|
ImageMagick
|
||||||
|
Loading…
x
Reference in New Issue
Block a user