On 21/11/2007, Scott McKellar <[EMAIL PROTECTED]> wrote: > This patch applies the const qualifier to various things: > > 1. To a number of function parameters. > > 2. To a couple of local variables, so that we can eventually change > jsonObjectGetString() so as to return a const pointer, as it should. > > 3. To the pointer returned by oilsFMGetObject(). > > The last change may be a bit controversial because it restricts > the future use of this function -- i.e. the pointer it returns > may not be used to change the jsonObject to which it points. > > As it happens, in no case do we use the returned pointer to change > the referenced jsonObject. In an earlier patch I tweaked > oils_requestor.c to assign the return value to a const pointer > instead of a non-const pointer, but no other changes are needed to > accommodate the constness. > > The reason for this change is that the pointer returned is obtained > from a call to jsonObjectGetIndex(), which itself should return > a const pointer (though it doesn't yet). > > If the constness proves too restrictive, we can revisit the matter > or find a workaround. If all else fails we can use an evil cast > somewhere. In practice I doubt that the issue will arise. > > Scott McKellar > http://home.swbell.net/mck9/ct/ > > Developer's Certificate of Origin 1.1 By making a contribution to > this project, I certify that: > > (a) The contribution was created in whole or in part by me and I > have the right to submit it under the open source license indicated > in the file; or > > (b) The contribution is based upon previous work that, to the best > of my knowledge, is covered under an appropriate open source license > and I have the right under that license to submit that work with > modifications, whether created in whole or in part by me, under the > same open source license (unless I am permitted to submit under a > different license), as indicated in the file; or > > (c) The contribution was provided directly to me by some other person > who certified (a), (b) or (c) and I have not modified it; and > > (d) In the case of each of (a), (b), or (c), I understand and agree > that this project and the contribution are public and that a record > of the contribution (including all personal information I submit > with it, including my sign-off) is maintained indefinitely and may > be redistributed consistent with this project or the open source > license indicated in the file. >
Just a thumbs-up to these patches - they apply cleanly and appear to work well with the limited testing I've done so far. Thanks Scott! -- Dan Scott Laurentian University