Date: prev next · Thread: first prev next last
2011 Archives by date, by thread · List index


I'm guessing that its failing on more then just Mac OS. I found a patch at 
http://old.nabble.com/build-problems-with-libpng-1.5.1beta01-td30662957.html that seams to work.

I'm not sure how to include it in our build system so I'm attaching including it here. It doesn't 
apply cleanly so I had to do the "@@ -459,7 +463,7 @@ gdk_pixbuf__png_image_begin_load (GdkPix" 
section manually. Also, it looks like we're using 2.23.0 while the latest stable is 2.22.1; so I'm 
guessing we may find other issues. Also, the most resent unstable is 2.23.3 ( I couldn't find the 
download site just the manual).

Can someone please verify & integrate this somehow... also, because of the patch isn't mine I'm not 
sure how licensing will work (the closest I noticed to a licenese was "here's the patch I used in 
case someone else needs it"); the lease we should do is make sure the two of them get some credit.

This is working now; however, I'm getting a segfault in an unrelated section of code during "make 
check".

Exception Type:  EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x0000000069727469
Crashed Thread:  0  Dispatch queue: com.apple.main-thread

Thread 0 Crashed:  Dispatch queue: com.apple.main-thread
0   libuno_cppuhelpergcc3.dylib.3       0x002e8773 com::sun::star::uno::WeakReferenceHelper::get() 
const + 67
1   libdbamxi.dylib                     0x5f97c65a dbaccess::ODatabaseModelImpl::dispose() + 42
2   libdbamxi.dylib                     0x5f9019e5 dbaccess::ODatabaseContext::disposing() + 101
3   libuno_cppuhelpergcc3.dylib.3       0x002d73be cppu::WeakComponentImplHelperBase::dispose() + 
158
4   libuno_cppuhelpergcc3.dylib.3       0x002fbc78 
cppu::createOneInstanceRegistryFactory(com::sun::star::uno::Reference<com::sun::star::lang::XMultiServiceFactory>
 const&, rtl::OUString const&, 
com::sun::star::uno::Reference<com::sun::star::registry::XRegistryKey> const&) + 6120
5   libuno_cppuhelpergcc3.dylib.3       0x0030aabc cppu::OComponentHelper::release() + 156
6   libuno_cppuhelpergcc3.dylib.3       0x002fe32c 
cppu::createOneInstanceRegistryFactory(com::sun::star::uno::Reference<com::sun::star::lang::XMultiServiceFactory>
 const&, rtl::OUString const&, 
com::sun::star::uno::Reference<com::sun::star::registry::XRegistryKey> const&) + 16028
7   libuno_cppuhelpergcc3.dylib.3       0x002e8a38 cppu::OWeakAggObject::release() + 104
8   libuno_cppuhelpergcc3.dylib.3       0x0030aa8d cppu::OComponentHelper::release() + 109
9   bootstrap.uno.dylib                 0x04317693 component_getFactory + 90403
10  libuno_cppuhelpergcc3.dylib.3       0x002d73be cppu::WeakComponentImplHelperBase::dispose() + 
158
11  bootstrap.uno.dylib                 0x04312bd8 component_getFactory + 71272
12  libuno_cppuhelpergcc3.dylib.3       0x00302552 
cppu::createComponentContext(cppu::ContextEntry_Init const*, long, 
com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&) + 2466
13  libuno_cppuhelpergcc3.dylib.3       0x002d73be cppu::WeakComponentImplHelperBase::dispose() + 
158
14  libsofficeapp.dylib                 0x000776d1 0x5a000 + 120529
15  libsofficeapp.dylib                 0x00064059 0x5a000 + 41049
16  libvclmxi.dylib                     0x017c9c4b DeInitVCL() + 1451
17  libvclmxi.dylib                     0x017ca445 ImplSVMain() + 245
18  libvclmxi.dylib                     0x0177d61b AquaSalInstance::handleAppDefinedEvent(NSEvent*) 
+ 75
19  libvclmxi.dylib                     0x01ab511b -[VCL_NSApplication sendEvent:] + 315
20  com.apple.AppKit                    0x989ee2a7 -[NSApplication run] + 917
21  com.apple.AppKit                    0x989e62d9 NSApplicationMain + 574
22  libvclmxi.dylib                     0x0177f0a7 ImplSVMainHook(int*) + 343
23  libvclmxi.dylib                     0x017ca571 SVMain() + 17
24  libsofficeapp.dylib                 0x00098d85 soffice_main + 245
25  org.libreoffice.script              0x00001ebe main + 30
26  org.libreoffice.script              0x00001822 start + 258
27  org.libreoffice.script              0x00001749 start + 41

So it looks like I know what I'm working on tomorrow...

Joe P.

------------------------------------------------------------


$NetBSD: patch-af,v 1.1 2011/01/13 17:14:43 wiz Exp $

Fix build with png-1.5.

--- gdk-pixbuf/io-png.c.orig    2010-07-10 00:54:35.000000000 +0000
+++ gdk-pixbuf/io-png.c
@@ -183,7 +183,11 @@ png_simple_error_callback(png_structp pn
                              error_msg);
         }

+#if (PNG_LIBPNG_VER < 10500)
         longjmp (png_save_ptr->jmpbuf, 1);
+#else
+        png_longjmp (png_save_ptr, 1);
+#endif
 }

 static void
@@ -287,7 +291,7 @@ gdk_pixbuf__png_image_load (FILE *f, GEr
         return NULL;
        }

-       if (setjmp (png_ptr->jmpbuf)) {
+       if (setjmp (png_jmpbuf(png_ptr))) {
                g_free (rows);

         if (pixbuf)
@@ -459,7 +463,7 @@ gdk_pixbuf__png_image_begin_load (GdkPix
                 return NULL;
         }

-       if (setjmp (lc->png_read_ptr->jmpbuf)) {
+       if (setjmp (png_jmpbuf(lc->png_read_ptr))) {
         if (lc->png_info_ptr)
         png_destroy_read_struct(&lc->png_read_ptr, NULL, NULL);
                 g_free(lc);
@@ -531,7 +535,7 @@ gdk_pixbuf__png_image_load_increment(gpo
         lc->error = error;

         /* Invokes our callbacks as needed */
-       if (setjmp (lc->png_read_ptr->jmpbuf)) {
+       if (setjmp (png_jmpbuf(lc->png_read_ptr))) {
                 lc->error = NULL;
         return FALSE;
        } else {
@@ -654,7 +658,7 @@ png_info_callback   (png_structp png_rea
                                      GDK_PIXBUF_ERROR,
                                      GDK_PIXBUF_ERROR_INSUFFICIENT_MEMORY,
                                      _("Insufficient memory to store a %ld by %ld image; try 
exiting some applications to reduce memory usage"),
-                                     width, height);
+                                     (long)width, (long)height);
                 }
                 return;
         }
@@ -769,7 +773,11 @@ png_error_callback(png_structp png_read_
                              error_msg);
         }

+#if (PNG_LIBPNG_VER < 10500)
         longjmp (png_read_ptr->jmpbuf, 1);
+#else
+        png_longjmp (png_read_ptr, 1);
+#endif
 }

 static void
@@ -978,7 +986,7 @@ static gboolean real_save_png (GdkPixbuf
               success = FALSE;
               goto cleanup;
        }
-       if (setjmp (png_ptr->jmpbuf)) {
+       if (setjmp (png_jmpbuf(png_ptr))) {
               success = FALSE;
               goto cleanup;
        }


Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.