discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Favored GNUstep Plattforms


From: Dan Pascu
Subject: Re: Favored GNUstep Plattforms
Date: Thu, 22 Nov 2001 02:04:29 +0200 (EET)

It would be good to tell the gsweb maintainer to stop using it.
Eventually try using libWUtil from WINGs (a library with the non-GUI
functions from WINGs, including the property list support and
compatibility support for code using old libPropList functions - all
you need is to import a compat header file and change a few in your
code, changes described step by step in the compat header file).

libPropList is flawed (at design level) because it mixes concepts from
property list with concepts from user defaults that cause an unsolvable
conflict between those borrowed user default concepts and the
retain/release mechanism of property lists.
Because of this conflict there is possible to make libPropList corrupt
data and crash with a segmentation fault performing a very simple
(reproducible) set of operations on a proplist_t data.
Unfortunately this bug cannot be solved because of the previously
mentioned design flaw, without removing the borrowed user defaults
concepts, which means pretty much completely rewriting libPropList.
This is what we did with adding property list support code in WINGs,
which is more robust and has a much smaller memory footprint. 
(we didn't wanted the burden of rewriting libPropList and maintain an
extra library none else seems to use - libPropList is no longer
maintained btw).

Converting an app to use property list code from libWUtil is a very easy
task (basically a find/replace one). 
Making a libPropList based app work without rewriting, by just linking
against libWUtil is even simpler (just include WINGs/proplist-compat.h
instead of proplist.h and follow the instructions in that header file
about a few other things to change. Of course also link with libWUtil
instead of libPropList. Though rewriting to use the new function names
is recommended).

P.S. We haven't had any bug report about the new proplist code from
when wmaker-0.70.0 was released (more than a month), so proplist code
from WINGs can be considered very stable. Also libWUtil offers a
NSUserDefaults alike implementation which can be of use.


On 21 Nov, Kim Shrier wrote:
> If you build gsweb, it uses this library.
> 
> Kim
> 
> Richard Frith-Macdonald wrote:
>> 
>> On Wednesday, November 21, 2001, at 04:12 PM, Kim Shrier wrote:
>> 
>> > We use FreeBSD for GNUstep.  Since you are familiar with NeXT 3.2
>> > which is based on BSD 4.3, you might find one of the BSD's easier
>> > to deal with.  You will need to install the ports for ffcall, libxml2,
>> > and libPropList before building GNUstep from source on FreeBSD.
>> 
>> I don't think you want libProbList ... GNUstep has never used it, and
>> wmaker has stopped using it ... so you would only want it if
>> you wish to install an old copy of wmaker for some reason.
>> 
>> _______________________________________________
>> Discuss-gnustep mailing list
>> Discuss-gnustep@gnu.org
>> http://mail.gnu.org/mailman/listinfo/discuss-gnustep
> 

-- 
Dan




reply via email to

[Prev in Thread] Current Thread [Next in Thread]