KDE3.4RC1: Incompatibility

Scott Wheeler wheeler at kde.org
Mon Mar 14 20:45:22 GMT 2005

On Monday 14 March 2005 17:07, Martin Ellis wrote:
> On Sunday 13 Mar 2005 20:54, Scott Wheeler wrote:
> > Huh?  This is kind of a dumb idea, actually.  What will you gain by
> > replacing a well maintained C library with a Qt-based
> > implementation of its API?
> Some sanity maybe?
> Quoting myself on a different thread on KOffice-devel:
>   The glib API provides no checking of indices.
>   Contrast that to something like this from the Qt API
>    http://doc.trolltech.com/3.3/qstring.html#at,
>   where using out of bounds indices has a defined behaviour
>   (defined in the sense that it's not 'buffer overflow').

But you won't get around that with a C API.  Without operator overloading you 
can't fix:

GString *s = g_string_new("foo");
gchar c = s[10];

Even if you reimplement the API in Qt, you'd still have just overrun some 
buffer.  Where glib offers such things semantically (i.e. GList), the bounds 
are also checked.


The three chief virtues of a programmer are: laziness, impatience and hubris.
--Larry Wall

More information about the kde-core-devel mailing list