[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: svn commit: r18202 - in trunk/subversion: include libsvn_client libsvn_subr

From: Branko Čibej <brane_at_xbc.nu>
Date: 2006-01-24 20:14:11 CET

zhakov@tigris.org wrote:
> Author: zhakov
> Date: Tue Jan 24 08:12:31 2006
> New Revision: 18202
>
> Modified:
> trunk/subversion/include/svn_xml.h
> trunk/subversion/libsvn_client/prop_commands.c
> trunk/subversion/libsvn_subr/xml.c
>
> Log:
> Factor out svn_xml_is_xml_name_valid() to eliminate usage of
> svn_ctype_table variable outside of libsvn_subr library. This needed because
> exporting variables from Windows DLLs requires __declspec(dllexport).
> See disscussion here: http://svn.haxx.se/dev/archive-2005-12/0178.shtml
>
Later on in that discussion, I did mention that the svn_ctype macros are
a public API. Exporting just svn_xml_is_xml_name_valid doesn't help,
because the macros will still break when used outside libsvn_subr. I
don't care if they're not used elsewhere right now, they a) should be,
and b) are a public API which must work.

Therefore, I suggest exporting a new function, svn_ctype_get_table()
which returns the svn_ctype_table, deprecating the public status of the
latter, and reimplementing the macros with the new function.

(You can give that funtion __attribute__((pure, const)) to give gcc more
opportunity for optimisation.)

-- Brane

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Tue Jan 24 20:15:03 2006

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.