> > >1) In my development setup, I've got libappserver building as a > > > static > >library ATM and linking it into the app_server and Appearance > >2) FontServer.h/cpp declares a global FontServer *fontserver > >3) Appearance allocates an object to it. > >4) Appearance loads a decorator > >5) Decorator references the fontserver object (as defined in > >libappserver) and segfaults > > Well, first of all, I don't think you should do that. FontServer is a > server object afterall, and it's even a private class (at least, from what I understand looking at the code/headers). So why not use BFont, which is the libbe class which interfaces with the font server ? > Is there any reason why BFont isn't enough for you? Most definitely. The app_server decorators, being primarily server objects, depend on services provided directly by the app_server. Decorators make graphics calls by making use of the system's DisplayDriver. DisplayDriver depends on having an allocated FontServer instance. Appearance emulates certain services provided by the app_server in order to provide previews of the decorator in the current color set. Anyway, the solution hit me while I was lying in bed last night, trying to go to sleep. I got everything to build and work properly (obligatory screenshot attached), so I will be continuing my fixes and check them in later today. --DW -- Attached file included as plaintext by Ecartis -- Content-Transfer-Encoding: base64 Content-Disposition: Attachment Content-Type: image/png; name=appearance.png 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 gg== -- Binary/unsupported file stripped by Ecartis -- -- Type: application/x-be_attribute -- File: BeOS Attributes