Deliver on snow leopard
Hi,
I have a problem to delivering an application on Mac OS 10.6.2 :
When using objc:ensure-objc-initialized to initialize the cocoa library,
definitions of the capi-cocoa-library seem to be lost and the creation of
output-panes crashes the application :
The console says :
++++++++
*** NSInvocation: warning: object 0x400620 of class
'LWCAPIOutputPaneRepresentation' does not implement
doesNotRecognizeSelector: -- abort
+++++++++
But in fact, when debugging I see that the objc class
LWCAPIOutputPaneRepresentation simply does not exist anymore.
If I don¹t call objc:ensure-objc-initialized, the creation of output panes
works normally, but I cannot use the objc package : all the objc methods are
undefined.
This problem can be tested with the test-cocoa-application-full of the file
"examples/capi/applications/cocoa-application.lisp" of the library. This
example doesn't use the objc package, so it works normally. But if you add a
call to objc:ensure-objc-initialized at the beginning of the launch
function, like this :
(defun test-cocoa-application-full ()
(objc:ensure-objc-initialized :modules
'("/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation"
"/System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa"))
(capi:set-application-interface
(make-instance 'cocoa-application-interface-full-test))
;; Start the application with no windows initially.
(capi:convert-to-screen nil))
After delivering, the application crashes when you try to create the first
window with the menu "circle" (because it creates an output pane at this
moment).
My question is : is it the same on Leopard ? I have 10.4 and 10.6 and I
cannot test 10.5...
Thanks in advance !
Denis
-------------------------------------------------------
Denis Pousseur
70 rue de Wansijn
1180 Bruxelles, Belgique
Tel : 32 (0)2 219 31 09
Mail : denis.pousseur@gmail.com
-------------------------------------------------------