[OPEN-ILS-DEV] PATCH: oils_cstore.c (using OSRF_BUFFER_ADD_CHAR)
Walker, Julie
jwalker at georgialibraries.org
Sun Dec 14 08:52:59 EST 2008
Q
--------------------------
Sent using BlackBerry
-----Original Message-----
From: open-ils-dev-bounces at list.georgialibraries.org <open-ils-dev-bounces at list.georgialibraries.org>
To: Open-ILS <open-ils-dev at list.georgialibraries.org>
Sent: Sat Dec 13 20:28:06 2008
Subject: [OPEN-ILS-DEV] PATCH: oils_cstore.c (using OSRF_BUFFER_ADD_CHAR)
This patch is a minor performance tweak.
The existing code often uses buffer_add() to append a single character
to a growing buffer. In these cases the new version uses the
OSRF_BUFFER_ADD_CHAR macro instead.
At one time, buffer_add_char() added a single character by creating
a one-character string and passing it to buffer_add(). It was more
efficient to call buffer_add() directly, even for a single character.
The current implementation of buffer_add_char() does not rely on
buffer_add(), nor does the corresponding macro OSRF_BUFFER_ADD_CHAR.
They are faster than buffer_add() because they don't have to call any
functions such as strlen() or strcpy() for a one-character string.
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.
More information about the Open-ils-dev
mailing list