[Python-bugs-list] [ python-Bugs-595105 ] AESend on Jaguar

noreply@sourceforge.net noreply@sourceforge.net
Fri, 30 Aug 2002 04:47:19 -0700


Bugs item #595105, was opened at 2002-08-14 18:02
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=595105&group_id=5470

Category: Macintosh
Group: Python 2.3
Status: Open
Resolution: None
Priority: 5
Submitted By: Alexandre Parenteau (aubonbeurre)
Assigned to: Jack Jansen (jackjansen)
Summary: AESend on Jaguar

Initial Comment:
I wonder how many of you guys played with Jaguar 
(OSX 10.2). It is also my
first glance at gcc 3.1 that comes with 10.2. Everything 
was fine for
building Python, except for waste which has an 
obsolete libWaste.a (even in
August 1st Waste 2.1b1) which won't compile with 
gcc3.1. After I recompiled
waste with CodeWarrior 8.2 (MPTP: early access), it 
came OK.

I then run into some problems of checked out files 
because I'm using MacCvs
(see earlier message). I used the 'make 
frameworkinstall' scheme.

Now I'm experiencing the nice new architecture. I 
mostly use python from the
command line to invoke CodeWarrior thru AppleScripts, 
so I almost immeditly
run into a hanging problems of python :

        _err = AESend(&_self->ob_itself,
                      &reply,
                      sendMode,
                      sendPriority,
                      timeOutInTicks,
                      0L/*upp_AEIdleProc*/,
                      (AEFilterUPP)0);

I had to comment out upp_AEIdleProc (I tried several 
things, but that is the
only thing which helped). Jack, you might want to 
remember this one if the
problem is still in Jaguar. It hangs and finally times out. 
I've looked
inside this function and I can see the signal handling, 
but I'm not sure
what it is for.

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

>Comment By: Jack Jansen (jackjansen)
Date: 2002-08-30 13:47

Message:
Logged In: YES 
user_id=45365

The problem turns out to be that under Jaguar you must *not* pass an 
idle routine if you haven't done all the correct toolbox initializations yet.

To verify this, do something like "import EasyDialogs; 
EasyDialogs.Message("There we go")" at the start of your script. 
Everything now works fine.

Somehow, if you haven't initialized, the idle routine will be called with 
random garbage, and it will be called continuously.

The question is: what's the best way to fix this? I noticed that even a 
simple Carbon.Evt.WaitNextEvent(0,0) in your test script is enough to 
make it work. Should we call this in the init_AE() routine? in AESend()?


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

Comment By: Jack Jansen (jackjansen)
Date: 2002-08-19 16:45

Message:
Logged In: YES 
user_id=45365

Alexandre,
I tried a few simple things with the AE module (talking to CodeWarrior) 
on Jaguar, but I can't get it to hang.

Could you give me an example script that shows the problem?

Also: I've been using MachoPython from the CVS HEAD, I assume 
you're using the same, right?

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

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=595105&group_id=5470