crategus / cl-cffi-gtk

cl-cffi-gtk is a Lisp binding to the GTK+ 3 library.
http://www.crategus.com/books/cl-cffi-gtk
146 stars 33 forks source link

Update tutorial.lisp #35

Open jkordani opened 9 years ago

jkordani commented 9 years ago

on osx 10.7, the gtk settings parameters result in the following backtrace. their removal allows for the application to run.

null-pointer in parse-g-param-spec [Condition of type SIMPLE-ERROR]

Restarts: 0: [RETRY] Retry SLIME REPL evaluation request. 1: [*ABORT] Return to SLIME's top level. 2: [ABORT-BREAK] Reset this thread 3: [ABORT] Kill this thread

Backtrace: 0: (PARSE-G-PARAM-SPEC #) 1: (GOBJECT::CLASS-PROPERTY-INFO #<GTYPE :name "GtkSettings" :id 549513776> "gtk-settings-gtk-recent-files-enabled") 2: (GOBJECT::CLASS-PROPERTY-TYPE #<GTYPE :name "GtkSettings" :id 549513776> "gtk-settings-gtk-recent-files-enabled" :ASSERT-READABLE T :ASSERT-WRITABLE NIL) 3: (#<STANDARD-METHOD CCL:SLOT-BOUNDP-USING-CLASS (GOBJECT-CLASS T GOBJECT::GOBJECT-PROPERTY-EFFECTIVE-SLOT-DEFINITION)> # #<GTK-SETTINGS #x302002B3FB5D> #<GOBJECT-PROPERTY-EF.. 4: (CCL::%SHARED-INITIALIZE #<GTK-SETTINGS #x302002B3FB5D> T (:POINTER #<A Foreign Pointer #x230102B0>)) 5: (#<CCL::STANDARD-KERNEL-METHOD SHARED-INITIALIZE (STANDARD-OBJECT T)> #<GTK-SETTINGS #x302002B3FB5D> T :POINTER #<A Foreign Pointer #x230102B0>) 6: (#<CCL::STANDARD-KERNEL-METHOD INITIALIZE-INSTANCE (STANDARD-OBJECT)> #<GTK-SETTINGS #x302002B3FB5D> :POINTER #<A Foreign Pointer #x230102B0>) 7: (CCL::%%CNM-WITH-ARGS-COMBINED-METHOD-DCODE #(#<STANDARD-GENERIC-FUNCTION INITIALIZE-INSTANCE #x302000026ADF> (#<STANDARD-METHOD INITIALIZE-INSTANCE #> #<#> #<#> #<#>) ..)) (#<GTK-SETTINGS #x302002B3F.. 8: (CCL::%CALL-NEXT-METHOD-WITH-ARGS (#(#<STANDARD-GENERIC-FUNCTION INITIALIZE-INSTANCE #x302000026ADF> (#<#> #<#> #<#> #<#>) (#<STANDARD-GENERIC-FUNCTION INITIALIZE-INSTANCE #x302000026ADF> #) ..)))) #<.. 9: (CCL::%%BEFORE-AND-AFTER-COMBINED-METHOD-DCODE (#(#<STANDARD-GENERIC-FUNCTION INITIALIZE-INSTANCE #x302000026ADF> (#<#> #<#> #<#> #<#>) ..))))) 10: (CCL::%CALL-NEXT-METHOD (#(#<STANDARD-GENERIC-FUNCTION INITIALIZE-INSTANCE #x302000026ADF> (#<#> #<#> #<#> #<#>) (#<STANDARD-GENERIC-FUNCTION INITIALIZE-INSTANCE #x302000026ADF> #) ..))))) 11: (#<STANDARD-METHOD INITIALIZE-INSTANCE :AROUND (G-OBJECT)> #<GTK-SETTINGS #x302002B3FB5D>) 12: (CCL::%%CNM-WITH-ARGS-COMBINED-METHOD-DCODE #(#<STANDARD-GENERIC-FUNCTION INITIALIZE-INSTANCE #x302000026ADF> (#<STANDARD-METHOD INITIALIZE-INSTANCE #> #<#> #<#> #<#>) ..)) 79343270 NIL) 13: (NIL #) 14: (CCL::%MAKE-STD-INSTANCE # (:POINTER #<A Foreign Pointer #x230102B0>)) 15: (#<CCL::STANDARD-KERNEL-METHOD MAKE-INSTANCE (STANDARD-CLASS)> # :POINTER #<A Foreign Pointer #x230102B0>) 16: (CCL::%CALL-NEXT-METHOD (#(#<STANDARD-GENERIC-FUNCTION MAKE-INSTANCE #x30200002635F> (#<#> #<#> #<#>) NIL NIL (#<#> #<#>)) #<CCL::STANDARD-KERNEL-METHOD MAKE-INSTANCE (STANDARD-CLASS)> . 79343328)) 17: (#<STANDARD-METHOD MAKE-INSTANCE (GOBJECT-CLASS)> # :POINTER #<A Foreign Pointer #x230102B0>) 18: (CCL::%%CNM-WITH-ARGS-COMBINED-METHOD-DCODE #(#<STANDARD-GENERIC-FUNCTION MAKE-INSTANCE #x30200002635F> (#<STANDARD-METHOD MAKE-INSTANCE #> #<#> #<#>) NIL NIL ..) 79343328 NIL) 19: (NIL #) 20: (#<CCL::STANDARD-KERNEL-METHOD MAKE-INSTANCE (SYMBOL)> GTK-SETTINGS :POINTER #<A Foreign Pointer #x230102B0>) 21: (GOBJECT::CREATE-GOBJECT-FROM-POINTER #<A Foreign Pointer #x230102B0>) 22: (#<STANDARD-METHOD TRANSLATE-FROM-FOREIGN (T GOBJECT::FOREIGN-G-OBJECT-TYPE)> #<A Foreign Pointer #x230102B0> #<GOBJECT::FOREIGN-G-OBJECT-TYPE #x302001B0FFBD>) 23: (BLOAT-PAD-NEW) 24: (EXAMPLE-APPLICATION 0 #) 25: (CCL::CALL-CHECK-REGS EXAMPLE-APPLICATION) 26: (CCL::CHEAP-EVAL (EXAMPLE-APPLICATION)) 27: (SWANK::EVAL-REGION "(example-application )\n") 28: ((:INTERNAL SWANK-REPL::REPL-EVAL)) 29: (SWANK-REPL::TRACK-PACKAGE #<CCL:COMPILED-LEXICAL-CLOSURE (:INTERNAL SWANK-REPL::REPL-EVAL) #x302002A5AF6F>) 30: (SWANK::CALL-WITH-RETRY-RESTART "Retry SLIME REPL evaluation request." #<CCL:COMPILED-LEXICAL-CLOSURE (:INTERNAL SWANK-REPL::REPL-EVAL) #x302002A5AFEF>) 31: (SWANK::CALL-WITH-BUFFER-SYNTAX NIL #<CCL:COMPILED-LEXICAL-CLOSURE (:INTERNAL SWANK-REPL::REPL-EVAL) #x302002A5B02F>) 32: (SWANK-REPL::REPL-EVAL "(example-application )\n") 33: (CCL::CALL-CHECK-REGS SWANK-REPL:LISTENER-EVAL "(example-application )\n") 34: (CCL::CHEAP-EVAL (SWANK-REPL:LISTENER-EVAL "(example-application )\n")) 35: (SWANK:EVAL-FOR-EMACS (SWANK-REPL:LISTENER-EVAL "(example-application )\n") "GTK-TUTORIAL" 52) 36: (SWANK::PROCESS-REQUESTS NIL) 37: ((:INTERNAL SWANK::HANDLE-REQUESTS)) 38: ((:INTERNAL SWANK::HANDLE-REQUESTS)) 39: (SWANK/BACKEND:CALL-WITH-DEBUGGER-HOOK #<Compiled-function SWANK:SWANK-DEBUGGER-HOOK #x30200098A17F> #<CCL:COMPILED-LEXICAL-CLOSURE (:INTERNAL SWANK::HANDLE-REQUESTS) #x302000B34EDF>) 40: (SWANK::CALL-WITH-BINDINGS ((STANDARD-OUTPUT . #<SWANK/GRAY::SLIME-OUTPUT-STREAM #x302000B32C9D>) (STANDARD-INPUT . #<SWANK/GRAY::SLIME-INPUT-STREAM #x302000B3300D>) ..))) #<CCL:COMPILED-LEXICAL-C.. 41: (SWANK::HANDLE-REQUESTS #<MULTITHREADED-CONNECTION #x3020009E581D> NIL) 42: (CCL::RUN-PROCESS-INITIAL-FORM #<PROCESS repl-thread(13) [Active] #x302000B21EED> (#<CCL:COMPILED-LEXICAL-CLOSURE (:INTERNAL CCL::%PROCESS-RUN-FUNCTION) #x302000B21C7F>)) 43: ((:INTERNAL (CCL::%PROCESS-PRESET-INTERNAL (CCL:PROCESS))) #<PROCESS repl-thread(13) [Active] #x302000B21EED> (#<CCL:COMPILED-LEXICAL-CLOSURE (:INTERNAL CCL::%PROCESS-RUN-FUNCTION) #x302000B21C7F>)) 44: ((:INTERNAL CCL::THREAD-MAKE-STARTUP-FUNCTION))

jkordani commented 9 years ago

In hindsight I probably should have made those conditional in some way... sorry.