On Sat, 19 Jul 2008, Chris Young wrote:

However, I'd like to run it "more natively" so am looking into writing
the necessary GUI code for AmigaOS.  I have NetSurf compiled here with
"debug" target and it is working except for the macros in utils/ring.h
(the first call to RING_FINDBYHOST crashes in strcasecmp() seemingly
because of the element variable - I suspect it's not getting
initialised properly and is pointing to garbage in memory.  The other
macros are crashing for the same reason).  I've disabled them for now
but any clues on that one would be welcomed.

Well, element is initialised from ring. I can't see anything wrong with that code, so I'd check that the ring is valid in the code that uses the macro. It should be, given that code works fine on other platforms.

Secondly - and please feel free to point me to existing documentation
on this one, as I can't find any - I'd like an overview of which
functions I need to write as a starting point.  I can glean some of
this from looking through the ui source, but I'd like to avoid
anything unimportant for now - just enough to get the page rendered
and displayed.  Everything else can come later!

desktop/gui.h contains most of the API that platform frontends need to implement. There are probably a few other bits and pieces scattered around elsewhere, but they should be obvious, as it won't link without them :)

Your best bet is to stub out the things defined in gui.h, then work from there. It should be pretty obvious which bits are vital.


J.

Reply via email to