Commit 1056f021 authored by Ken Coar's avatar Ken Coar
Browse files

	Untangle the last patch..  ap_add_version_component() needs to
	*prepend* the strings it's fed, not append them.  This is because
	the last thing that calls it before the string is locked is
	ap_set_version() (as in set-like-cement), which adds the
	SERVER_BASEVERSION, the platform (conditionally), and the
	SERVER_SUBVERSION (if defined) at a known location - the front
	of the string.

	This has the drawback that module contributions will be listed
	in reverse order from their 'importance' (which is, in turn,
	in reverse order from their appearance in the Configuration
	file ;-).  However, only modules with major effects should be
	contributing to the string anyway, so we can consider them
	equal.  Can't we?

	The alternative is to either allow ap_set_version() to directly
	modify the string rather than going through ap_add...(), or else
	to add another routine that appends rather than prepends.  I
	don't like either of these because of the issues with semantics
	synchronisation and code duplication.

	The last patch confused things, though, so I'm just returning the
	behaviour to the original design - if someone wants to take
	extra steps to have module contributions listed in the same
	order as they're called, have a party.

	This should fix Rasmus' problem with the components being out
	of order, although it doesn't touch his issue with the init
	callback duplicating the SERVER_SUBVERSION effort.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/1.3.x@81211 13f79535-47bb-0310-9956-ffa450edef68
parent 88f3a23f
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment