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

Re: Circular library dependency under Windows?

From: Max Bowsher <maxb1_at_ukf.net>
Date: 2006-02-16 18:46:41 CET

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

kfogel@collab.net wrote:
> "Peter N. Lundblad" <peter@famlundblad.se> writes regarding r18462:
>>> Log:
>>> Fix issue #2398: bogus pointer comparison led to server-side
>>> assert failure.
>>>
>>> * subversion/libsvn_fs/fs-loader.h, subversion/libsvn_fs/fs-loader.c
>>> (svn_fs__same_p): New function.
>>>
>>> * subversion/libsvn_fs_fs/tree.c
>>> (copy_helper): Use above to check equality of the two filesystems,
>>> instead of depending on pointer equality. Handle inequality by
>>> returning an error, instead of failing an assertion.
>>>
>>> * subversion/libsvn_fs_base/tree.c
>>> (copy_helper): Same.
>> Hmmm, I thought such circular dependencies were not supported on
>> Windows...
>
> You mean having the lower-level library make calls into the
> higher-level library? Hmm, that's a good point. It just compiled and
> worked for me (Debian GNU/Linux), so I assumed there was no problem.
>
> Can anyone with more Windows development experience say for sure? If
> necessary, I can trivially rewrite the change. This would result in a
> bit of duplicated code (sigh), but I can put comments to help keep the
> duplicates in sync.

Done, r18482.

The situation for Cygwin/Windows is: cyclic dependencies are ok in
_static_ libraries, but *not* ok in _shared_ libraries.

This means that the change broke Cygwin builds, because people often
build shared libraries on Cygwin, but didn't break Windows builds,
because we haven't managed to teach our buildsystem to build shared on
Windows yet.

Max.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (Cygwin)

iD8DBQFD9LqBfFNSmcDyxYARAgWqAJ43YhoamVkp5eWDJ9Iz4SMiWCkoVQCeJe9C
d0MEVddyCqCU5qY6cvOXnVU=
=M158
-----END PGP SIGNATURE-----

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Thu Feb 16 18:58:30 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.