[MacPorts] #45309: gimp2 @2.8.14 on 10.9 - doesn't load plug-ins

MacPorts noreply at macports.org
Fri Oct 10 13:22:55 PDT 2014


#45309: gimp2 @2.8.14 on 10.9 - doesn't load plug-ins
---------------------------+----------------------
  Reporter:  and.damore@…  |      Owner:  devans@…
      Type:  defect        |     Status:  assigned
  Priority:  Normal        |  Milestone:
 Component:  ports         |    Version:
Resolution:                |   Keywords:
      Port:  gimp2         |
---------------------------+----------------------

Comment (by devans@…):

 Status:

 So far I've been able to confirm that the dbus issue and the failing
 plugins have a common element:  they both involve spawning a child process
 that terminates prematurely.

 In the dbus case, g_dbus_address_get_for_bus_sync() attempts to execute
 the launchctl command in a spawned child process which reports killed by
 signal 11.  However, this only happens when running gimp.  For example,
 running eog (or most other GNOME apps) the child process is spawned
 successfully and the correct result returned.
 {{{
 $ eog
 GDBus-debug:Address: In g_dbus_address_get_for_bus_sync() for bus type
 'session'
 GDBus-debug:Address: env var DBUS_SESSION_BUS_ADDRESS is not set
 GDBus-debug:Address: env var DBUS_SYSTEM_BUS_ADDRESS is not set
 GDBus-debug:Address: env var DBUS_STARTER_BUS_TYPE is not set
 GDBus-debug:Address: launchctl command line: `launchctl getenv
 DBUS_LAUNCHD_SESSION_BUS_SOCKET'
 GDBus-debug:Address: launchctl stdout:
   0000: 2f 74 6d 70  2f 6c 61 75  6e 63 68 2d  37 4d 46 69    /tmp/launch-
 7MFi
   0010: 64 37 2f 75  6e 69 78 5f  64 6f 6d 61  69 6e 5f 6c
 d7/unix_domain_l
   0020: 69 73 74 65  6e 65 72 0a  00                          istener..
 GDBus-debug:Address: Returning address 'unix:path=/tmp/launch-
 7MFid7/unix_domain_listener' for bus type 'session'
 }}}

 In the case of the GIMP plugins, the failure point occurs when GIMP is
 querying the individual plugins for their characteristics.  The plugin is
 executed as a child process which communicates bidirectionally with the
 main program using a pair of pipes.  After sending a query command to each
 plugin, the main process attempts to read an expected response but
 immediately gets an EOF instead and the plugin is skipped.  A crash report
 for the child is produced as follows:
 {{{
 Process:         gimp-2.8 [62774]
 Path:            /opt/local/bin/gimp-2.8
 Identifier:      gimp-2.8
 Version:         ???
 Code Type:       X86-64 (Native)
 Parent Process:  gimp-2.8 [62731]
 Responsible:     Terminal [361]
 User ID:         501

 Date/Time:       2014-10-09 12:14:46.255 -0700
 OS Version:      Mac OS X 10.9.5 (13F34)
 Report Version:  11
 Anonymous UUID:  25BD4C19-81DA-575C-A9EB-3C11B6BF2F84


 Crashed Thread:  0  Dispatch queue: com.apple.main-thread

 Exception Type:  EXC_BAD_ACCESS (SIGSEGV)
 Exception Codes: KERN_INVALID_ADDRESS at 0x00000001118b69b5

 VM Regions Near 0x1118b69b5:
     __LINKEDIT             0000000110f36000-0000000110f47000 [   68K]
 r--/rwx SM=COW  /opt/local/lib/*.dylib
 -->
     MALLOC_TINY            00007ff479400000-00007ff479800000 [ 4096K]
 rw-/rwx SM=COW

 Application Specific Information:
 *** multi-threaded process forked ***
 crashed on child side of fork pre-exec

 Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
 0   ???                                 0x00000001118b69b5 0 + 4589316533
 1   libsystem_pthread.dylib             0x00007fff85d06f5b
 _pthread_fork_child_postinit + 69
 2   libsystem_c.dylib                   0x00007fff85c0317e fork + 29
 3   libglib-2.0.0.dylib                 0x000000010f692067
 fork_exec_with_pipes + 695 (gspawn.c:1337)
 4   libglib-2.0.0.dylib                 0x000000010f691293
 g_spawn_async_with_pipes + 851 (gspawn.c:661)
 5   libglib-2.0.0.dylib                 0x000000010f690f26 g_spawn_async +
 198 (gspawn.c:146)
 6   gimp                                0x000000010e078486
 gimp_plug_in_open + 1894 (gimpplugin.c:363)
 7   gimp                                0x000000010e0826a1
 gimp_plug_in_manager_call_query + 641 (gimppluginmanager-call.c:75)
 8   gimp                                0x000000010e087e9e
 gimp_plug_in_manager_query_new + 382 (gimppluginmanager-restore.c:355)
 9   gimp                                0x000000010e087688
 gimp_plug_in_manager_restore + 536 (gimppluginmanager-restore.c:112)
 10  gimp                                0x000000010e0b4a71
 gimp_real_restore + 97 (gimp.c:715)
 11  libgobject-2.0.0.dylib              0x000000010f559674
 g_cclosure_marshal_VOID__POINTER + 244 (gmarshal.c:1201)
 12  libgobject-2.0.0.dylib              0x000000010f553398
 g_type_class_meta_marshal + 120 (gclosure.c:966)
 13  libgobject-2.0.0.dylib              0x000000010f55288a
 g_closure_invoke + 522 (gclosure.c:773)
 14  libgobject-2.0.0.dylib              0x000000010f57583b
 signal_emit_unlocked_R + 2155 (gsignal.c:3591)
 15  libgobject-2.0.0.dylib              0x000000010f5774ee
 g_signal_emit_valist + 6046 (gsignal.c:3309)
 16  libgobject-2.0.0.dylib              0x000000010f577e94 g_signal_emit +
 356 (gsignal.c:3365)
 17  gimp                                0x000000010e0b1849 gimp_restore +
 1449 (gimp.c:1013)
 18  gimp                                0x000000010dd56704 app_run + 708
 (app.c:221)
 19  gimp                                0x000000010dd5a017 main + 1255
 (main.c:474)
 20  libdyld.dylib                       0x00007fff85d005fd start + 1

 Thread 0 crashed with X86 Thread State (64-bit):
   rax: 0x0000000000000004  rbx: 0x0000000000000028  rcx:
 0x00000001118b69b5  rdx: 0x0000000000000000
   rdi: 0x0000000000000103  rsi: 0x0000000000000403  rbp:
 0x00007fff51eb5440  rsp: 0x00007fff51eb5418
    r8: 0x0000000000000003   r9: 0x0000000000000000  r10:
 0x00000000000002bc  r11: 0x0000000000000246
   r12: 0x000000010e0786b0  r13: 0x0000000000000000  r14:
 0x000000010e6d01e0  r15: 0x0000000000000001
   rip: 0x00000001118b69b5  rfl: 0x0000000000010202  cr2:
 0x00000001118b69b5

 Logical CPU:     3
 Error Code:      0x00000014
 Trap Number:     14
 }}}

 Again spawning the child process has failed (SIGSEGV).

 No idea what's causing the problem and why it is specific to GIMP at this
 point.  If any one else has an idea about what's going on here or better
 how to fix it please let me know. I'm heading out for the weekend but
 should get back to this on Sunday.

-- 
Ticket URL: <https://trac.macports.org/ticket/45309#comment:6>
MacPorts <http://www.macports.org/>
Ports system for OS X


More information about the macports-tickets mailing list