OSX 10.3 Panther + SDL = trouble

I’ll cut straight to the chase: here’s what happens, as best I can tell:

I create a data structure local to my main function. It has about 15
elements. I initialize them.

I call a void-in void-out subroutine which calls SDL_PollEvent().

My data structure’s data is now mostly random.

According to GDB, somewhere in SDL_PollEvent() all but two of the elements of
my data structure are set to weird values. There is no connection between
the two elements that remain untouched. The structure contains no
pointers, and there are no pointers to it in the code. The only
connection it has with SDL is that one of its elements is intialized
based on SDL_GetTicks(). The elements whose values change, and what those
values change to are consistent from run to run. Something similar happens
to another variable (of the same type) which is equally unlikely to be
available to or affected by SDL_PollEvent(). No other structures appear to
be affected.

I’m stumped. Anyone had a similar problem or have any idea what’s going