Merge branch '7.40'
Conflicts: ChangeLog configure.ac
This commit is contained in:
commit
b746984318
@ -5,6 +5,9 @@
|
||||
- return of vips_init(), but just for bindings
|
||||
- revised type.c to make it more binding-friendly
|
||||
|
||||
8/9/14 started 7.40.8
|
||||
- fix configure on rhel6 [Lovell]
|
||||
|
||||
21/8/14 started 7.40.7
|
||||
- width and height were swapped in matlab load
|
||||
- set interpretation more carefully on matlab load
|
||||
@ -12,6 +15,8 @@
|
||||
- fix memleak in VipsArray [Lovell]
|
||||
- fix memleak in webp load from buffer [Lovell]
|
||||
- fix memleak in png save to buffer [Lovell]
|
||||
- make out of order read in png and jpg a fatal error
|
||||
- add thread_shutdown() to C++ (and thereby to python)
|
||||
|
||||
12/8/14 started 7.40.6
|
||||
- more doc fixes
|
||||
|
10
configure.ac
10
configure.ac
@ -37,9 +37,9 @@ VIPS_VERSION_STRING=$VIPS_VERSION-`date`
|
||||
# binary interface changes backwards compatible?: increment age
|
||||
# binary interface changes not backwards compatible?: reset age to 0
|
||||
|
||||
LIBRARY_CURRENT=38
|
||||
LIBRARY_REVISION=5
|
||||
LIBRARY_AGE=0
|
||||
LIBRARY_CURRENT=39
|
||||
LIBRARY_REVISION=0
|
||||
LIBRARY_AGE=1
|
||||
|
||||
# patched into include/vips/version.h
|
||||
AC_SUBST(VIPS_VERSION)
|
||||
@ -411,7 +411,7 @@ PACKAGES_USED="$PACKAGES_USED glib-2.0 libxml-2.0 gmodule-2.0 gobject-2.0"
|
||||
# after 2.28 we have a monotonic timer
|
||||
PKG_CHECK_MODULES(MONOTONIC, glib-2.0 >= 2.28,[
|
||||
AC_DEFINE(HAVE_MONOTONIC_TIME,1,[define if your glib has g_get_monotonic_time().])
|
||||
],[
|
||||
],[:
|
||||
]
|
||||
)
|
||||
|
||||
@ -432,7 +432,7 @@ PKG_CHECK_MODULES(THREADS, glib-2.0 >= 2.32,[
|
||||
# with 2.36 and after the type system inits itself
|
||||
PKG_CHECK_MODULES(TYPE_INIT, glib-2.0 < 2.36,[
|
||||
AC_DEFINE(NEED_TYPE_INIT,1,[define if your glib needs g_type_init().])
|
||||
],[
|
||||
],[:
|
||||
]
|
||||
)
|
||||
|
||||
|
@ -71,7 +71,7 @@
|
||||
#include "pconversion.h"
|
||||
|
||||
/* Stall threads that run ahead for up to this long, in seconds. Normally they
|
||||
* will be woken up long before this, once their data is ready. The timeout is
|
||||
* will be woken once their data is ready and long before this. The timeout is
|
||||
* just to prevent a total crash in the case of accidental deadlock.
|
||||
*
|
||||
* This has to be a long time: if we're trying to use all cores on a busy
|
||||
|
@ -916,7 +916,11 @@ read_jpeg_generate( VipsRegion *or,
|
||||
/* And check that y_pos is correct. It should be, since we are inside
|
||||
* a vips_sequential().
|
||||
*/
|
||||
g_assert( r->top == jpeg->y_pos );
|
||||
if( r->top != jpeg->y_pos ) {
|
||||
vips_error( "VipsJpeg",
|
||||
_( "out of order read at line %d" ), jpeg->y_pos );
|
||||
return( -1 );
|
||||
}
|
||||
|
||||
/* Here for longjmp() from vips__new_error_exit().
|
||||
*/
|
||||
|
@ -483,7 +483,11 @@ png2vips_generate( VipsRegion *or,
|
||||
/* And check that y_pos is correct. It should be, since we are inside
|
||||
* a vips_sequential().
|
||||
*/
|
||||
g_assert( r->top == read->y_pos );
|
||||
if( r->top != read->y_pos ) {
|
||||
vips_error( "vipspng",
|
||||
_( "out of order read at line %d" ), read->y_pos );
|
||||
return( -1 );
|
||||
}
|
||||
|
||||
for( y = 0; y < r->height; y++ ) {
|
||||
png_bytep q = (png_bytep) VIPS_REGION_ADDR( or, 0, r->top + y );
|
||||
|
@ -64,6 +64,11 @@ void shutdown()
|
||||
vips_shutdown();
|
||||
}
|
||||
|
||||
void thread_shutdown()
|
||||
{
|
||||
vips_thread_shutdown();
|
||||
}
|
||||
|
||||
void VImage::refblock::debug_print()
|
||||
{
|
||||
std::list<refblock *>::iterator i;
|
||||
|
@ -63,6 +63,7 @@ VIPS_NAMESPACE_START
|
||||
/* vips_init() and vips_shutdown as namespaced C++ functions.
|
||||
*/
|
||||
bool init( const char *argv0 = "nothing" );
|
||||
void thread_shutdown( void );
|
||||
void shutdown( void );
|
||||
|
||||
/* A VIPS callback, our name for im_callback_fn.
|
||||
@ -451,6 +452,8 @@ VIPS_NAMESPACE_END
|
||||
// Other VIPS protos we need
|
||||
extern "C" {
|
||||
extern int im_init_world( const char *argv0 );
|
||||
extern int im_init_world( const char *argv0 );
|
||||
extern void vips_thread_shutdown( void );
|
||||
extern void im__print_all();
|
||||
extern void im_col_Lab2XYZ(
|
||||
float, float, float,
|
||||
|
@ -490,7 +490,7 @@ thumbnail_shrink( VipsObject *process, VipsImage *in,
|
||||
if( vips_tilecache( in, &t[4],
|
||||
"tile_width", in->Xsize,
|
||||
"tile_height", 10,
|
||||
"max_tiles", (nlines * 2) / 10,
|
||||
"max_tiles", 1 + (nlines * 2) / 10,
|
||||
"access", VIPS_ACCESS_SEQUENTIAL,
|
||||
"threaded", TRUE,
|
||||
NULL ) )
|
||||
|
Loading…
Reference in New Issue
Block a user